﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Common
{
    public interface IDealer
    {
        List<HandInfo> AllHands { get; }
        event EventHandler NewHandStarted;
        event EventHandler<DecisionEventArgs> DecisionPoint;
        void SetupGame();
        void StartDealing();
    }
    public class DecisionEventArgs : EventArgs
    {
        public string PlayerID { get; set; }
        public DecisionPointInfo CurrentInfo { get; set; }
        public HandInfo HandData { get; set; }
        public DecisionType Decision { get; set; }
        public DecisionEventArgs(string pid, DecisionPointInfo dpi)
        {
            PlayerID = pid;
            CurrentInfo = dpi;
        }
    }
    public enum DecisionType
    {
        Fold,
        Check,
        Call,
        Raise,
    }
}
